[必读] 脚本编写注意项
91M2说明书 > 引擎脚本功能 >

[QFunctionNpc]

1.不可对OnBagItemEvent函数传入的物品Item执行穿戴、丢弃或删除等操作,该事件的目的只是为了表示背包数量物品变化

2.事件PlayerDropItem、PlayerThrowItem中如果对物品执行穿戴、丢弃或删除等操作,则必须设置Accept为False

3.不可对不属于人物的物品执行穿戴操作,如事件MonDropItem、DropItemByMonName中的物品

4.事件OnTakeOffItem中永远无法也不可以对正在取下的物品执行穿戴到另外一个位置的操作

 

[变量使用]

unit Q56;

interface
  uses Classes, SysUtils;

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);

var
  HumCount: Integer; 
  //这里表示的是全局变量,如果做个人变量使用则需要谨慎,逻辑不清可能会导致数据错乱

implementation

var
  HumCountA: Integer; 
  //这里表示单元内的全局变量,针对本单元此变量是唯一的,不属于个人变量,同样如果做个
  //人变量使用则需要谨慎,逻辑不清可能会导致数据错乱

procedure Main(Npc: TNormNpc; Player: TPlayObject; Args: TArgs);
var
  HumCountB: Integer; //这里的变量是函数局部变量,个人数据处理时不影响其他玩家,可任意赋值 
begin
  //如果需要使用个人变量,则应该考虑如下方式 
  
  //1.常规变量
  Player.S[11] := '字符串'; //临时变量,退出游戏清空
  Player.P[11] := 110; //临时变量,退出游戏清空
  Player.N[11] := 110; //永久变量,将保存到数据
     
  //2.自定义变量
  Player.VarBoolean('是否领取奖励').AsBoolean := True; //定义一个布尔型变量,并且赋值
  Player.VarBoolean('是否领取奖励').Save; //存储该变量,如果不存储,则玩家离线后此变量消失  
  //同样的还有: Player.VarString,Player.VarInteger,Player.VarFloat,Player.VarDateTime
end;

end.
 

引擎官网:www.91M2.com   交流群:5555999   此引擎仅供测试,切勿用于商业用途。如有侵权请立即联系我们,我们将在第一时间删除。